package com.itheima.reggie.common;


import com.itheima.reggie.common.R;

import lombok.extern.slf4j.Slf4j;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.bind.annotation.*;

//异常通知类  是对异常的拦截和处理

//用于标识当前类是Rest风格的异常的处理类
//是将其他地方的异常都抛到表现层进行统一的处理
@ControllerAdvice(annotations = {RestController.class})
@ResponseBody
@Slf4j
public class ProjectExceptionAdvice {

    //用于设置当前类的处理器类对应的异常类型
    @ExceptionHandler(CustomException.class)
    public R<String> doBusinessException(CustomException e) {
        return R.error(e.getMessage());
    }

   /* @ExceptionHandler(SystemException.class)
    public R<String> doSystemException(SystemException e) {
        return R.error(e.getMessage());
    }*/

    /*@ExceptionHandler(Exception.class)
    public R<String> doException(Exception e) {
        return R.error("系统繁忙,请稍后再试!");
    }
*/
}
